package com.navinfo.platform.trip.common.arithmetic.var;

import com.navinfo.platform.trip.common.arithmetic.DrivingEcoNo_DFN;
import lombok.Data;

/**
 * 非ECO经济驾驶算法{@link DrivingEcoNo_DFN}的统计变量
 * @author web
 */
@Data
public class VarDrivingEcoNo {

    /**
     * 上一个有效的转速值
     */
    private int preRotation;

    /**
     * 当前统计周期内的统计时长，单位ms<br/>
     */
    private long statisticDuration;
    /**
     * 当前统计周期内<br/>
     * 速度>30，转速在1000-1700的个数
     */
    private int statisticEcoNumber;
    /**
     * 当前统计周期内<br/>
     * 速度>30，转速不在1000-1700的个数
     */
    private int statisticNoEcoNumber;


    /**
     * 行程内<br/>
     * 非经济转速行驶次数
     */
    private int noEcoNumber;
    /**
     * 行程内<br/>
     * 速度>30，转速在1000-1700的时长 单位:MS
     **/
    private int ecoDuration;
    /**
     * 行程内<br/>
     * 速度>30，转速不在1000-1700的时长 单位:MS
     **/
    private int noEcoDuration;
    /**
     * 行程内<br/>
     * 速度>30，转速不在1000-1700的里程 单位: M
     */
    private double noEcoMileage;
    /**
     * 行程内<br/>
     * 速度>30，转速不在1000-1700的油耗 单位:ML
     **/
    private double noEcoFuel;

    public void addStatisticEcoNumber(int num){
        this.statisticEcoNumber += num;
    }
    public void addStatisticNoEcoNumber(int num){
        this.statisticNoEcoNumber += num;
    }
    public void addStatisticDuration(int dffTime){
        this.statisticDuration += dffTime;
    }

    public void addNoEcoNumber(int num){
        this.noEcoNumber += num;
    }
    public void addEcoDuration(int dffTime){
        this.ecoDuration += dffTime;
    }
    public void addNoEcoDuration(int dffTime){
        this.noEcoDuration += dffTime;
    }
    public void addNoEcoMileage(double mileage){
        this.noEcoMileage += mileage;
    }
    public void addNoEcoFuel(double fuel){
        this.noEcoFuel += fuel;
    }

}
